With increasing use of the Internet as an electronic marketplace, electronic product catalogs provide useful tools for advertising goods and services (referred to generally herein as “products”) to Internet users. These catalogs are typically run on an Internet server, provided for example by the product supplier or a service provider acting on behalf of multiple product suppliers, and can be accessed via the Internet by potential customers to search for products of interest.
In existing catalog systems, various mechanisms are employed to assist customers in finding the products of particular interest to them. At present, hierarchical navigation is the most common customer guidance mechanism. To support hierarchical navigation, the pages of the electronic catalog are organized according to product categories. Users navigate to the desired product by making multiple selections, each time specifying in more detail what they are looking for. For example, when shopping for an IBM notebook computer at an on-line computer store, the user might reach the relevant section of the catalog by first selecting the product category “Computer Hardware” from a list of categories on the main page of the catalog. On the resulting Computer Hardware page, the user might then select the product category “Notebooks” from another list. The Notebooks page may then give a list of suppliers, from which the user can select “IBM” to reach a page giving further details of IBM notebook PCs. (IBM is a trade mark of International Business Machines Corporation).
Hierarchical product catalogs are easy to build and maintain, and in some situations they are the right tool for users to find the product they are looking for. However, hierarchical navigation is not appropriate for users looking for products which are not represented as a separate product category (e.g. “laptops with at least a 4 GB hard disk and a stick-pointer”), and can also be confusing for users who are not familiar with the technical terms and need help finding products that match their needs (e.g. “I want a computer to do presentations at client sites”).
An alternative navigation system is to allow users to filter products according to particular product features. For example, for a general product category like “Notebooks”, a list of technical features such as “Processor Speed”, “Processor Type”, “Hard Drive”, etc., may be displayed, each with a pull-down menu allowing the user to specify his requirements for each feature. The catalogue engine then uses the entered features as filter criteria to search its product database for products meeting the user's requirements. The resulting list of products can then be displayed, and the requirements refined if desired to further restrict the matching product set. In some cases, the matching products may then be transferred to a “comparison tool” which provides a side-by-side view of the product details for ease of comparison by the user. Various custom-built electronic catalogs currently use such feature-based filtering as the user guidance mechanism. In addition, the IBM Net.Commerce Catalog Architect Addition provides a catalog building tool that supports shop owners in building feature-based filtering into their catalogs. Feature-based filtering mechanisms like these are useful for experienced users, who know about the relevant product features, or who are at least willing to learn about features by exploring feature explanations provided in the catalog.
A third mechanism for user guidance is so-called “needs-based interviewing”. This mechanism is modeled on the way a sales assistant interviews customers about their particular needs to establish which product would be the most suitable purchase. Here users are not asked about preferred product features, but instead are asked about their needs and how they intend to use the product. In the context of buying a notebook computer for example, a typical needs-based interviewing question might be “Do you intend to use spreadsheet software on your computer?”. The answers given by users to such questions imply certain product feature constraints, and these constraints are used by the catalog engine to progressively limit the set of potentially suitable products. In particular, the interview follows a predetermined “decision tree” which represents possible lines of questioning in a tree structure. The idea is that an interview always starts with the same question, at the root of the tree, and the user's answer provides an initial constraint which excludes, from the complete set of products in the product database, those products which are unsuitable for the user. For each possible user answer, the next question to be presented to the user is defined in the decision tree, and the answers to this next question imply further constraints to limit the suitable product set and themselves lead to further questions. Thus, the lines of questioning will follow different routes through the decision tree depending on the user's answers at each stage, and the set of suitable products will be progressively tailored to the user's needs. Currently, such needs-based interviewing mechanisms are offered by relatively few on-line shops. The IBM Net.Commerce Catalog Architect Addition mentioned above also provides support to shop owners in building needs-based interviewing into their catalogs, allowing relevant questions and answers to be input by developers to define the decision tree and enabling rules relating answers associated with questions to product feature constraints to be defined.
Needs based interviewing is particularly useful for novice customers who do not know about technical details and need more assistance with product selection, whereas feature-based filtering as discussed above is particularly useful for experienced customers who know very well what they are looking for. In practice, however, customers will often fall somewhere in the middle of this novice-expert spectrum. Catalogs built with the IBM Net.Commerce tool mentioned above can allow users to start the product selection process using a “Sales Assistant” which does the needs-based interviewing, and then, at any stage in the dialog, to switch to a second view that displays the remaining products in a table and allows feature-based filtering on that product set. However, due to the underlying structure of decision trees discussed above, it is not possible to switch to needs-based interviewing after restriction to an arbitrary product set using feature-based filtering. (For example, it is not possible first to constrain the set of notebook computers to those having a stick-pointer as the pointing device, and only then switch to the “Sales Assistant” for needs-based interviewing on the remaining product set). This is because decision trees are inherently constructed for a predefined initial product set, whereas feature-based filtering can constrain the set of suitable products in any number of ways, rendering use of the decision tree inapplicable to the resulting arbitrary product set.